# 1. HTTP 1.0/1.1/2.0

# HTTP是什么

  • 基于TCP/IP的关于数据如何在万维网中通信的协议
HTTP 1.0 HTTP 1.1 HTTP 1.0
每个TCP连接只发送一个请求,
服务器响应后就会关闭这个连接,下次请求需要再次建立TCP连接
采用持久连接 双工模式(服务器能够处理多个请求)
管道机制(同一个TCP连接允许多个请求同时发送) 多路复用(没有次序概念)

# HTTP 1.1持久连接和HTTP 2.0多路复用

  • HTTP 1.1: 同一时间一个TCP连接只能处理一个请求(上一个请求响应后才能处理下一个请求)
  • HTTP 2.0: 同域名上所有的通信都在单个TCP连接上完成,单个连接可以并行交错进行请求和响应

# HTTP 1.1为什么不能实现多路复用

  • HTTP 1.1: 基于文本分割解析的协议
  • HTTP 2.0: 基于二进制帧的协议